package com.ruoyi.paiban.mapper;

import java.util.Date;
import java.util.List;

import com.ruoyi.paiban.domain.*;
import com.ruoyi.xiaoshouchuku.domain.XiaoshouChuku;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 员工排班Mapper接口
 * 
 * @author beilian
 * @date 2023-03-31
 */
@Mapper
public interface PaibanMapper 
{
    /**
     * 查询员工排班
     * 
     * @param id 员工排班主键
     * @return 员工排班
     */
    public Paiban selectPaibanById(Long id);

    /**
     * 查询员工排班列表
     * 
     * @param paiban 员工排班
     * @return 员工排班集合
     */
    public List<Paiban> selectPaibanList(Paiban paiban);

    /**
     * 新增员工排班
     * 
     * @param paiban 员工排班
     * @return 结果
     */
    public int insertPaiban(Paiban paiban);

    /**
     * 修改员工排班
     * 
     * @param paiban 员工排班
     * @return 结果
     */
    public int updatePaiban(Paiban paiban);

    /**
     * 删除员工排班
     * 
     * @param id 员工排班主键
     * @return 结果
     */
    public int deletePaibanById(Long id);

    /**
     * 批量删除员工排班
     * 
     * @param date 需要删除的数据主键集合
     * @return 结果
     */
    public int deletePaibanByIds(String[] date);

    public List<Paiban> selectPaiban2Date(String Date);

    List<Paiban> selectPaibanList2monthandyear(@Param("date_start")String date_start, @Param("date_end")String date_end);

    Paiban selectPaibanByDate(String date);


    /** 签到 */
    public int updateqiandao(Paiban paiban);

    String selectPaibanName2Date(String date);

    List<meiRiShuJu> selectMeiRi2Xiaoshou(@Param("startDate") String startDate,@Param("endDate") String endDate,@Param("yewuyuan") String yewuyuan);

    List<xiaoShou2Main> selectMeiRi2xiaoShou2Main(@Param("startDate") String startDate,@Param("endDate") String endDate);

    List<xiaoShou2Main> selectMeiRi2XiaoShouSearch2New();

    List<kuCun2Main> selectMeiRi2XiaoShouSearch2KuCun();

    List<XiaoshouChuku> selectXiaoShouSearch2YiChuKu(@Param("name")String name,@Param("datenow") String datenow,@Param("datebefor")String datebefor);

    List<XiaoshouChuku> selectXiaoShouSearch2WeiChuKu(@Param("name")String name,@Param("datenow") String datenow,@Param("datebefor")String datebefor);

    List<XiaoshouChuku> selectXiaoShouChuKuSearch2WeiChuKu(String name);

    List<Paiban> selectPaibanList2after(@Param("dateNow") String dateNow,@Param("dateAfter") String dateAfter);

    List<meiRiShuJu> selectMeiRi2XiaoShouSearch4Month(String dateNow);

    String selectUser4id(String userId);

    String selectUser4name(String username);

    List<User2Sys> selectUser2name(String username);

    List<miniapp> selectContainOpenID(String openid);

    int insertMiniapp(miniapp miniapp);

    User2Sys selectUser2Sys4id(long userid);

    int updateUser2Sys(User2Sys user);

    int updataMiniapp(miniapp miniapp);

    List<miniapp> selectMiniapp(miniapp miniapp);
}
